import pandas as pd



# 读取 CSV 文件
df = pd.read_csv("basic_info/stock_info.csv", dtype={"股票代码": str})

# 将总市值转换为数字类型（防止字符串或带逗号的情况）
df["总市值"] = pd.to_numeric(df["总市值"], errors="coerce")

# 去除总市值为 NaN 的行
df = df.dropna(subset=["总市值"])

# 按行业分组，并选出每组总市值最大的前10家公司
top10_by_industry = df.groupby("行业", group_keys=False).apply(lambda x: x.sort_values("总市值", ascending=False).head(10))

# 保存到新文件
top10_by_industry.to_csv("top10_by_industry.csv", index=False, encoding="utf-8-sig")

print("筛选完成，结果已保存到 top10_by_industry.csv")
